import request from '@/config/axios'

// ERP 申请管理 VO
export interface AttendanceVO {
  id: number // 申请编号
  userId: string // 用户编号
  typeId: number // 客户编号
  startTime: Date // 订单时间
  endTime: number // 开始时间
  duration: number // 请假时长
  remark: string // 备注
  checkState: number // 审批状态：0，审批中 1，审批通过 2，审批未通过 3，撤销审批中 4，撤销通过 5，撤销未通过
  checkDesc: string // 审批说明
}

// ERP 采购订单 API
export const AttendanceApi = {
  // 查询采购订单分页
  getAttendancePage: async (params: any) => {
    return await request.get({ url: `/erp/attendance/page`, params })
  },

  // 查询采购订单详情
  getAttendance: async (id: number) => {
    return await request.get({ url: `/erp/attendance/get?id=` + id })
  },

  // 新增采购订单
  createAttendance: async (data: AttendanceVO) => {
    return await request.post({ url: `/erp/attendance/create`, data })
  },

  // 修改采购订单
  updateAttendance: async (data: AttendanceVO) => {
    return await request.put({ url: `/erp/attendance/update`, data })
  },

  // 更新采购订单的状态
  updateAttendanceCheckState: async (id: number, checkState: number) => {
    return await request.put({
      url: `/erp/attendance/update-check`,
      params: {
        id,
        checkState
      }
    })
  },

  // 删除采购订单
  deleteAttendance: async (ids: number[]) => {
    return await request.delete({
      url: `/erp/attendance/delete`,
      params: {
        ids: ids.join(',')
      }
    })
  },

  // 导出采购订单 Excel
  exportAttendance: async (params: any) => {
    return await request.download({ url: `/erp/attendance/export-excel`, params })
  }
}
